package com.jwsoft.manager.core.dao.model;

import com.baomidou.mybatisplus.annotation.*;
import com.baomidou.mybatisplus.extension.activerecord.Model;
import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import java.io.Serializable;
import io.swagger.v3.oas.annotations.media.Schema;
import lombok.Data;
import lombok.EqualsAndHashCode;
import lombok.experimental.Accessors;

/**
 * 新生报名大屏指标统计01（地址）
 *
 * @author linyh
 * @since 2023-04-24
 */
@Data
@EqualsAndHashCode(callSuper = false)
@Accessors(chain = true)
@TableName("edu_bigscreen_zbtj01")
@Schema(name = "EduBigscreenZbtj01", title = "新生报名大屏指标统计01（地址）", description = "新生报名大屏指标统计01（地址）实体类")
public class EduBigscreenZbtj01 extends Model<EduBigscreenZbtj01> {

    private static final long serialVersionUID = 1L;

    @Schema(name = "bigscreen01Id", title = "UID主键")
    @TableId(value = "bigscreen01_id", type = IdType.INPUT)
    private Long bigscreen01Id;

    @Schema(name = "addressCount", title = "累计地址数")
    @TableField(value = "address_Count")
    private Integer addressCount;

    @Schema(name = "addressIncreaseCount", title = "同比增长数")
    @TableField(value = "address_Increase_Count")
    private Integer addressIncreaseCount;

    @Schema(name = "addressAllocated", title = "已分配")
    @TableField(value = "address_allocated")
    private Integer addressAllocated;

    @Schema(name = "addressUnallocated", title = "未分配")
    @TableField(value = "address_unallocated")
    private Integer addressUnallocated;

    @Schema(name = "year", title = "年度")
    @TableField(value = "year")
    private Integer year;

    @Schema(name = "areaCode", title = "行政区划")
    @TableField(value = "area_code")
    private String areaCode;

    @Schema(name = "souHouse", title = "地址来源房产")
    @TableField(value = "sou_house")
    private Integer souHouse;

    @Schema(name = "souHousehold", title = "地址来源户籍")
    @TableField(value = "sou_household")
    private Integer souHousehold;

    @Schema(name = "souOthers", title = "其他来源")
    @TableField(value = "sou_others")
    private Integer souOthers;

    @Schema(name = "del", title = "逻辑删除标志")
    @TableField(value = "del", fill = FieldFill.INSERT, updateStrategy = FieldStrategy.NOT_NULL)
    @TableLogic
    private String del;

    @Override
    public Serializable pkVal() {
        return this.bigscreen01Id;
    }
}
